Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Najoptymalniejszy sposób na __autoload z wielu katalogów
Ultear
post
Post #1





Grupa: Zarejestrowani
Postów: 52
Pomógł: 3
Dołączył: 9.12.2013

Ostrzeżenie: (0%)
-----


Witam, zrobiłem __autoload, który wygląda tak o:

  1. $classes_dirs = array('libs/', 'application/controllers/', 'application/models/');
  2.  
  3. function __autoload($class){
  4.  
  5. global $classes_dirs;
  6.  
  7.  
  8.  
  9. try{
  10. require_once(autoload_class_existance($class, $classes_dirs));
  11. } catch(Exception $e){
  12. echo 'Caught exception'.$e->getMessage()."\n";
  13. }
  14. }


funkcja autoload_class_existance:

  1. function autoload_class_existance($class, $dirs){
  2.  
  3. foreach($dirs as $dir){
  4.  
  5. $path = APP_PATH.$dir.$class.'.php';
  6.  
  7. if(file_exists($path)){
  8. return $path;
  9. break;
  10. } else{
  11. continue;
  12. }
  13.  
  14. return false;
  15. }
  16.  
  17. }


Czy jest to dość optymalny sposób, czy da radę zrobić to lepiej?
Go to the top of the page
+Quote Post

Posty w temacie
- Ultear   Najoptymalniejszy sposób na __autoload z wielu katalogów   8.09.2014, 17:29:14
- - irekk   A nie lepiej oprzeć to o PSR-0?   8.09.2014, 18:12:57
- - pedro84   Zasadnicze pytanie: po co potrzebujesz bawić się w...   8.09.2014, 18:37:27
- - Ultear   Nie potrzebuje się bawić, po prostu zastanawiam si...   8.09.2014, 18:47:58
- - pedro84   Poczytaj sobie o klasie ładującej z PSR-0, jak Ci ...   8.09.2014, 19:04:29
- - by_ikar   Taa zwłaszcza że jest już kilkanaście gotowych kla...   8.09.2014, 19:18:30
- - Pyton_000   Proszę bardzo. 10 stron postów. Same dobre rzeczy ...   8.09.2014, 21:07:22
- - Ultear   Ok, zastosowałem klasę SplClassLoader, teraz tylko...   8.09.2014, 21:27:23
- - Pyton_000   libs wpakuj do aplications.   8.09.2014, 21:38:44
- - Ultear   Chciałbym później użyć libs w aplikacji backendowe...   8.09.2014, 21:43:58
|- - pedro84   Cytat(Ultear @ 8.09.2014, 22:43:58 ) ...   8.09.2014, 21:55:09
- - Ultear   Mógłbyś mi rozpisać prawidłową strukture MVC? Był...   8.09.2014, 22:03:25
|- - pedro84   Cytat(Ultear @ 8.09.2014, 23:03:25 ) ...   8.09.2014, 22:10:06
- - Crozin   1. MVC to jedynie wzorzec architektoniczny i nie m...   8.09.2014, 22:13:29
- - Ultear   Dziękuje wszystkim za udzielanie się tutaj, będę p...   10.09.2014, 12:33:40
- - pedro84   Msz zagadkę ma dziś Poprawiłem Twój kod, ale nie ...   10.09.2014, 13:06:34
- - Ultear   Już widzę Chodzi o \ przy PDO, dziękuje zap...   10.09.2014, 13:44:40
- - pedro84   Nie nadpisanie, ale przestrzeń globalna: http://ph...   10.09.2014, 13:44:41
- - Ultear   Wciąż mam problem, pomimo dodania \ wciąż aut...   10.09.2014, 13:59:28
- - pedro84   A Ty coś ten autoloader modyfikowałeś? Jeśli tak, ...   10.09.2014, 14:05:49
- - Ultear   Nie modyfikowąłem, wygląda standardowo, czyli tak ...   10.09.2014, 14:11:06
- - pedro84   Pokaż swoją strukturę katalogów oraz w którym miej...   10.09.2014, 15:46:15
- - Ultear   RE: Najoptymalniejszy sposób na __autoload z wielu katalogów   10.09.2014, 16:09:16
- - pedro84   Mały hint: stałe w tablicy w zmiennej $option...   10.09.2014, 16:24:16
- - Ultear   [PHP] pobierz, plaintext public $options = array...   10.09.2014, 16:38:10
- - pedro84   Będziesz pamiętał na przyszłość (mam nadzieję ). A...   10.09.2014, 16:53:55
- - Ultear   Dopiero zaczynam tematy z przestrzeniami nazw, dla...   10.09.2014, 17:04:15


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.09.2025 - 21:30